package com.wgy.day33其他增强流.Properties属性集合;

import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Properties;

/*
Properties集合是唯一一个和IO流相结合的集合
 可以使用Properties集合中的方法store,把集合中的临时数据,持久化写入到硬盘中存储
      void store(OutputStream out,String comments):
                       参数:OutputStream out:字节输出流,不能写中文

      void store(Writer writer,String comments):
                       参数:Writer writer:字符输出流,可以写中文
                           String comments:注释,用来解释说明保存的文件是做什么用的,不能使用中文,会产生乱码,默认是Unicode编码,一般使用""空字符串

      store使用步骤:1.创建Properties集合对象,并添加数据
                  2.创建字节输出流对象,构造方法中绑定要输出的目的地
                  3.使用Properties集合中的方法store,把集合中的临时数据,持久化写入的硬盘中存储
                  4.释放资源
 */
public class Demo02PropertiesStore {
    public static void main(String[] args) throws IOException {
        show03();

    }
    public static void show02() throws IOException {
        //1.创建Properties集合对象,并添加数据
        Properties prop=new Properties();
        prop.setProperty("赵丽颖","165");
        prop.setProperty("迪丽热巴","168");
        prop.setProperty("古力娜扎","160");

        //2.创建字符输出流对象,构造方法中绑定要输出的目的地
        FileWriter fw=new FileWriter("D:\\小云\\abc\\b\\prop.txt");

        //3.使用Properties集合中的方法store,把集合中的临时数据,持久化写入的硬盘中存储
        prop.store(fw,"save data");

        //4.释放资源
        fw.close();
    }
    public static void show03() throws IOException {
        //1.创建Properties集合对象,并添加数据
        Properties prop=new Properties();
        prop.setProperty("赵丽颖","165");
        prop.setProperty("迪丽热巴","168");
        prop.setProperty("古力娜扎","160");

        //2.创建字节输出流对象,构造方法中绑定要输出的目的地
        FileOutputStream fos=new FileOutputStream("D:\\小云\\abc\\b\\prop2.txt");

        //3.使用Properties集合中的方法store,把集合中的临时数据,持久化写入的硬盘中存储
        prop.store(fos,"save data");

        //4.释放资源
        fos.close();
    }
}
